﻿using System.Collections.Generic;

namespace ClickLand.CorporacionPlaza.Comunes.Entidades
{
    /// <summary> Clase que representa la entidad pension de arrendamiento en el sistema </summary>
    public class Pension
    {
        #region Atributos

        /// <summary> Identificador del registro </summary>
        private long _id;


        /// <summary> Cantidad de periodos de la pension </summary>
        private int _periodo;


        /// <summary> Tipo de incremento </summary>
        /// <remarks>0 si es simple 1 si es compuesto</remarks>
        private string _tipo;


        /// <summary> Estado del registro </summary>
        private int _estado;


        /// <summary> Lista de las pensiones del contrato </summary>
        private IList<ContratoPension> _contratoPensiones;


        /// <summary> Datos del contrato de lapension </summary>
        private Contrato _contrato;

        #endregion

        #region Propiedades

        /// <summary> Identificador del registro </summary>
        public virtual long Id
        {
            get { return _id; }
            set { _id = value; }
        }


        /// <summary> Cantidad de periodos de la pension </summary>
        public virtual int Periodo
        {
            get { return _periodo; }
            set { _periodo = value; }
        }


        /// <summary> Tipo de incremento </summary>
        /// <remarks>0 si es simple 1 si es compuesto</remarks>
        public virtual string Tipo
        {
            get { return _tipo; }
            set { _tipo = value; }
        }

        /// <summary> Estado del registro </summary>
        public virtual int Estado
        {
            get { return _estado; }
            set { _estado = value; }
        }


        /// <summary> Lista de las pensiones del contrato </summary>
        public virtual IList<ContratoPension> ContratoPensiones
        {
            get { return _contratoPensiones; }
            set { _contratoPensiones = value; }
        }


        /// <summary> Datos del contrato de lapension </summary>
        public virtual Contrato Contrato
        {
            get { return _contrato; }
            set { _contrato = value; }
        }

        #endregion

    }
}
